var tmpl_main = '\
	<div id="uqe_main_frame">\
		<header class="frame-header">\
			<div class="uqe-header-right">\
			</div>\
			<div class="uqe-header-footprint">\
				<ol class="breadcrumb">\
				  <li><a href="#">Home</a></li>\
				  <li class="active">Data</li>\
				</ol>\
				<div id="scrollText"></div>\
				<div id="alarmText"></div>\
			</div>\
		</header>\
		<aside class="frame-menu">\
			<ul>\
		</aside>\
		<section class="frame-content">\
			<article class="uqe-module"></article>\
			<article class="uqe-module"></article>\
			<article class="uqe-module"></article>\
			<article class="uqe-module"></article>\
		</section>\
	</div>';

var ScrollTime;
var voiceInterval;
function ScrollAutoPlay(contID,scrolldir,showwidth,textwidth,steper){
    var PosInit,currPos;
    with($('#'+contID)){
        currPos = parseInt(css('margin-left'));
        if(scrolldir=='left'){
            if(currPos<0 && Math.abs(currPos)>textwidth){
                css('margin-left',showwidth);
            }
            else{
                css('margin-left',currPos-steper);
            }
        }
        else{
            if(currPos>showwidth){
                css('margin-left',(0-textwidth));
            }
            else{
                css('margin-left',currPos-steper);
            }
        }
    }
}
//--------------------------------------------左右滚动效果----------------------------------------------
/*
AppendToObj：        显示位置（目标对象）
ShowHeight：        显示高度
ShowWidth：        显示宽度
ShowText：        显示信息
ScrollDirection：    滚动方向（值：left、right）
Steper：        每次移动的间距（单位：px；数值越小，滚动越流畅，建议设置为1px）
Interval:        每次执行运动的时间间隔（单位：毫秒；数值越小，运动越快）
*/
function ScrollText(AppendToObj,ShowHeight,ShowWidth,ShowText,ScrollDirection,Steper,Interval){
    var TextWidth,PosInit,PosSteper;
    with(AppendToObj){
        html('');
        css('overflow','hidden');
        css('height',ShowHeight+'px');
        css('line-height',ShowHeight+'px');
        css('width',ShowWidth);
    }
    if (ScrollDirection=='left'){
        PosInit = ShowWidth;
        PosSteper = Steper;
    }
    else{
        PosSteper = 0 - Steper;
    }
    if(Steper<1 || Steper>ShowWidth){Steper = 1}//每次移动间距超出限制(单位:px)
    if(Interval<1){Interval = 10}//每次移动的时间间隔（单位：毫秒）
    var Container = $('<div></div>');
    var ContainerID = 'ContainerTemp';
    var i = 0;
    while($('#'+ContainerID).length>0){
        ContainerID = ContainerID + '_' + i;
        i++;
    }
    with(Container){
      attr('id',ContainerID);
      css('float','left');
      css('cursor','default');
      appendTo(AppendToObj);
      html(ShowText);
      TextWidth = width();
      if(isNaN(PosInit)){PosInit = 0 - TextWidth;}
      css('margin-left',PosInit);
      mouseover(function(){
          clearInterval(ScrollTime);
      });
      mouseout(function(){
          ScrollTime = setInterval("ScrollAutoPlay('"+ContainerID+"','"+ScrollDirection+"',"+ShowWidth+','+TextWidth+","+PosSteper+")",Interval);
      });
    }
    ScrollTime = setInterval("ScrollAutoPlay('"+ContainerID+"','"+ScrollDirection+"',"+ShowWidth+','+TextWidth+","+PosSteper+")",Interval);
}

$(function() {
//	var divPassword = $(update_Password).appendTo('body');
	$('<div class="black_overlay">').appendTo('body');
//	$('<audio id="chatAudio" src=" "></audio>').appendTo('body');
	
	
//	var  TASK_MANAGER_PERMISSIONS="任务管理";//对任务的增删改查处理权限
//	var  USER_MANAGER_PERMISSIONS="用户管理";//用户、角色的增删改查处理权限
//	var  SYSTEM_MANAGER_PERMISSIONS="系统配置";//更新系统配置信息的权限、数据管理和Actor管理
//	var  ALARM_MANAGER_PERMISSIONS="告警处理";//处理告警，关闭告警的权限
//	var  NORMAL_PERMISSIONS="普通用户";//对任务的普通用户	只能看监控页面
//	var  COUNT_PERMISSIONS = "统计权限";//统计权限
	
	// 本地还没有会话
	$(window.Security).on('session.empty', function(event) {  });

	// 本地已有一个会话
	$(window.Security).on('session.noop', function(event, session) {
		// console.log('session.noop');
		var param = {
				userID: session.user.userId
		};
		// 联网验证会话有没有过期（不过期时延续一下会话生命）
		window.Proxy.noopSession(param, function(data) {
			// 验证成功则表示本地会话还没过期，可以直接初始化主界面
			// 会话过期时会在后台触发'session.exired'事件，这里不用处理
			$(window.Security).trigger('session.logined', [ session, null ]);
		}, function(e) {
			alert("存续期回话出现错误");
			// TODO sunwei 其他错误，需要提示一下
			console.log(e);
		});
	});
	// 用户长时不操作，造成会话过期
	$(window.Security).on('session.expired', function(event, session) {
		// console.log('session.expired');

		// 显示登录对话框，让用户重新登录
		// 如果登录成功请参阅session.logined
		$(window.Security).trigger('session.empty');
	});

	// 登录成功
	$(window.Security).on('session.logined', function(event, session, oldsession) {
		if(null == oldsession) {
			$('#uqe_main_frame').remove();
		}
		if(oldsession != null && session.user.userId !== oldsession.user.userId) {
			$('#uqe_main_frame').remove();
		}
		
		var frame = $('#uqe_main_frame');
		if(frame.size() <= 0) {
			frame = $(tmpl_main).appendTo('body');
			
			// 用户信息显示及退出按钮
			var dright = frame.find('.uqe-header-right').empty();
			var now = new Date();
			$('<span class="session-info time" id="current_time">').html(now.format('yyyy-MM-dd HH:mm:ss')).appendTo(dright);
			$('<span class="session-info user">').html('').appendTo(dright); // 当前用户：' + 'XXXX 
			// $('<a href="#updatePassword" class="session-info">修改密码</a> ').appendTo(dright).click(function(){ });
			// $('<a href="#logoff" class="session-info logoff" data-loading-text="退出中..">退出</a>').appendTo(dright).click(function(event){ });
			 
			// 主菜单
			var menu = [{
				name: '工作任务',
				items: [{ id: 'yog_task',		name: '任务管理' } 
				        ]
			}
			,{
				name: '基础数据管理',
				items: [
						{ id: 'yog_project',		name: '项目管理' } ,
						{ id: 'yog_user',		name: '人员管理' } 
						]
			}
			  
			 ];
			
			
			var ul = frame.find('.frame-menu>ul').empty();
			var dcontent = frame.find('.frame-content').empty();
			var dbreadcrumb = frame.find('.breadcrumb').empty();
			 
			$([{ id: 'welcome', name: '首页' }]).each(function(index, item){
				$('<li class="item">').appendTo(ul).data('menu-item', item);
			});
			$(menu).each(function(index, group){
				$('<li class="item-group">').html(group.name).appendTo(ul).wrapInner('<a>').click(function(event){
					event.preventDefault();
					$(this).toggleClass('collapsed');
				});
				var subul = $('<ul>').appendTo(ul);
				$(group.items).each(function(index, item){
					$('<li class="item">').appendTo(subul).data('menu-group', group).data('menu-item', item);
				});
			});
			
			ul.find('li.item').each(function(index, li){
				var li = $(li);
				var item = li.data('menu-item');
				var group = li.data('menu-group');
				$('<a>').attr('href', '#' + item.id).html(item.name).appendTo(li).click(function(event){
					event.preventDefault();
					if(li.hasClass('active')) {
						return;
					}
					ul.find('.active').removeClass('active');
					$(this).parent().addClass('active');
					dcontent.find('article').hide();
					
					var subframe = $('#' + item.id).show().find('iframe');
					if(subframe.get(0).src == '') {
						subframe.attr('src', 'page/' + item.id + '.html');
					}
					
					dbreadcrumb.empty();
					if(group) {
						$('<li>').html(group.name).appendTo(dbreadcrumb);
					}
					$('<li class="active">').html(item.name).appendTo(dbreadcrumb);
				});
				var article = $('<article class="uqe-module">').attr('id', item.id).appendTo(dcontent).hide();
				$('<iframe>').appendTo(article);
			});
			function alarmMethod(){ };
			alarmMethod();
			setInterval(alarmMethod,60*1000);
			ul.find('>li:first a').click();
		}
	});

	
	// 第一次打开页面，或者页面被刷新后，从本地存储中读取会话到内存中
//	var session = window.Security.loadLocalSession();
//	var Date1 =localStorage.getItem("LOGIN_TIME");
//	var DateNow = new Date().getTime();
//	if((DateNow - Date1)/(1000*60*60*3) > 1){
//		window.Security.releaseLocalSession();
//		$(window.Security).trigger('session.empty');
//	}else{
//		if (null == session) {
//			// 如果本地会话不存在，触发一个事件
//			$(window.Security).trigger('session.empty');
//		} else {
//			$(window.Security).trigger('session.noop', [ session ]);
//		}
//	}
	
	
//	$(window.Security).trigger('session.noop', [  ]);
	
	$(window.Security).trigger('session.logined', [ 'session', null ]);
	
	function adjustTime(){
		var today;
		today = new Date();
		$("#current_time").html(today.format('yyyy-MM-dd HH:mm:ss'));
	}
	setInterval(adjustTime,1000);
	//修改密码
//	var indexKey = 0;
//	divPassword.find('#userPasswordBtn').click(function(){ });
//	divPassword.find('#userPasswordCancle').click(function(){
//		divPassword.hide();
//		$(".black_overlay").hide();
//	});
//	divPassword.find('.edit_close').click(function(){
//		divPassword.hide();
//		$(".black_overlay").hide();
//	});
});
